package com.heima.collectionAndMap.map;

import java.util.HashMap;
import java.util.Map;

public class MapDemo01 {
    public static void main(String[] args) {
        /**
         * V put(K key, V value)               添加元素
         * V remove(Object key)                根据键删除键值对元素
         * void clear()                        移除所有的键值对元素
         * boolean containsKey(Object key)     判断集合是否包含指定的键
         * boolean containsValue(Object value) 判断集合是否包含指定的值
         * boolean isEmpty()                   判断集合是否为空
         * int size()                          集合的长度, 也就是集合中键值对的个数
         */

        // 1. 创建Map集合的对象
        Map<String, String> map = new HashMap<>();

        // 2. 添加元素
        map.put("郭靖", "黄蓉");
        String value1 = map.put("韦小宝", "沐剑屏"); // null, 键不存在返回null
        // System.out.println(value1);
        map.put("尹志平", "小龙女");
        String value2 = map.put("韦小宝", "双儿"); // 沐剑屏, 键存在返回覆盖的值
        // System.out.println(value2);

        // 3. 删除元素
        String value3 = map.remove("尹志平"); // 小龙女, 返回删除键的值
        // System.out.println(value3);

        // 4. 清空元素
        // map.clear();

        // 5. 判断是否包含指定键, 指定值
        boolean res1 = map.containsKey("郭靖"); // true
        // System.out.println(res1);
        boolean res2 = map.containsKey("xxx"); // false
        // System.out.println(res2);
        boolean res3 = map.containsValue("黄蓉"); // true
        // System.out.println(res3);
        boolean res4 = map.containsValue("xxx"); // false
        // System.out.println(res4);

        // 6. 判断集合是否为空, 获取集合长度
        boolean res5 = map.isEmpty(); // false
        // System.out.println(res5);
        int size = map.size(); // 2
        // System.out.println(size);

        // 打印集合
        System.out.println(map);
    }
}
